home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / systems / mac / oztex-german / OzTeX-1.4d.sit.bin / OzTeX 1.4 / TeX-inputs / Times-LFONTS.tex < prev    next >
Text File  |  1989-10-26  |  41KB  |  925 lines

  1. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2. % This modified version of LFONTS.TEX is for creating the Times-LaTeX format.
  3. % See Times-LaTeX.tex for details.
  4. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5. % File LFONTS - Version of 10 April 1989
  6. %
  7. % This version of LFONTS.TEX is for the CMR fonts.  It was converted
  8. % from the AMR version by David Fuchs on 18 December 1985.
  9. % And corrected on 11 Nov 1986 by Leslie Lamport.  
  10. % Last vestige of AMR fonts removed 3 Mar 89 by Leslie Lamport.
  11.  
  12. % This file needs to be customized for the fonts available at a particular
  13. % site.  There are three places where changes need to be made.  They
  14. % can be found by searching this file for the string  FONT-CUSTOMIZING.
  15. %
  16. % FONT CONVENTIONS
  17. %
  18. % A TYPESTYLE COMMAND is something like \it that defines a type style.
  19. % Each style command \xx is defined to be \protect\pxx, where 
  20. % \pxx is defined to choose the correct font for the current size.
  21. % This allows style commands to appear in 'unsafe' arguments where
  22. % protection is required.
  23. %
  24. % A SIZE COMMAND is something like \normalsize that defines a type size.
  25. % It is defined by the document style.  However, \normalsize is handled
  26. % somewhat differently because it is called so often--e.g., on every
  27. % page by the output routine.  The document style defines \@normalsize
  28. % instead of \normalsize.
  29. % A ONE-SIZE typestyle is one that exists only in the \normalsize size.
  30. %
  31. % A FONT-SIZE COMMAND is one that defines \textfont, \scriptfont and 
  32. % \scriptscriptfont for the font families corresponding to preloaded fonts,
  33. % as well as the typestyle commands for the preloaded fonts.  Each
  34. % font-size command has an associated @fontsize command, having the same
  35. % name except for an '@' at the front.   All font-size commands are defined 
  36. % in LFONTS.  The naming convention is that a fifteenpt font has a font-size
  37. % name \xvpt, and so on.
  38. %
  39. % Each size command \SIZE executes the command
  40. %             \@setsize\SIZE{BASELINESKIP}\FONTSIZE\@FONTSIZE
  41. % which does the following.
  42. %   0. Executes \@nomath\SIZE to issue warning if in math mode.
  43. %   1. \let \@currsize = \SIZE  
  44. %   2. Sets \strutbox to a strut of height .7 * BASELINESKIP and
  45. %      depth .3 * BASELINESKIP
  46. %
  47. %       Note: Charles Karney observed that step 2 is useless, since the
  48. %       \FONTSIZE command executed in step 4 resets \strutbox using
  49. %       the actual baselineskip, which is \baselinestretch * BASELINESKIP.
  50. %       Some day, this step may get removed.  (Note made 28 Feb 89)
  51. %
  52. %   3. Sets \baselineskip to \baselinestretch * BASELINESKIP 
  53. %      and 
  54. %   4. Calls \FONTSIZE 
  55. %   5. Executes the \@FONTSIZE command.
  56. % It should then define all the typestyle commands not defined by the font-size
  57. % command, except for the one-size type styles. A typestyle command for which
  58. % the corresponding font exists but is not preloaded is defined to expand to a
  59. % \@getfont command.  A typestyle whose font does not exist is defined to 
  60. % expand to a \@subfont command.
  61. %
  62. % A one-size typestyle whose font is not preloaded is defined to expand to
  63. % a \@onesizefont command.
  64. %
  65. % \em is defined to be \it inside an unslanted style and \rm inside a
  66. % slanted style.  An \em command in a section title will produce a \pem
  67. % command in the table of contents.
  68. %
  69.  
  70. \def\em{\protect\pem{}}
  71. \def\pem{\ifdim \fontdimen\@ne\font >\z@ \rm \else \it \fi}
  72.  
  73. \def\normalsize{\ifx\@currsize\normalsize \rm \else \@normalsize\fi}
  74.  
  75. % \load{SIZE}{STYLE} : Solves anomaly of loaded-on-demand font
  76. %    used for first time in math mode.  Give this command outside math
  77. %    mode, before formula using it for first time.
  78. \def\load#1#2{\let\@tempa\@currsize \let\@currsize\relax #1#2\@tempa}
  79.  
  80. % \newfont{\CMD}{FONT} defines \CMD to be the font FONT.
  81. %    It is equivalent to \font \CMD = FONT
  82. % \symbol{NUM} == \char NUM
  83.  
  84. \def\newfont#1#2{\@ifdefinable #1{\font #1=#2\relax}}
  85. \def\symbol#1{\char #1\relax}
  86.  
  87.  
  88.  
  89. % \@getfont \STYLE \FAM \@FONTSIZE{LOADING.INFO}
  90. %   \STYLE       = style command
  91. %   \FAM         = a control sequence defined by \newfam\FAM
  92. %   \@FONTSIZE   = the @fontsize command for the current size. 
  93. %   LOADING.INFO = information needed to load the font--e.g., 
  94. %                  cmtti10 \magstep 2
  95. %   Does the following, where \FONTNAME denotes a new unique, untypeable
  96. %   font name:
  97. %    1. Executes  \font \FONTNAME = LOADING.INFO 
  98. %    2. Appends '\textfont FAM \FONTNAME \def\STYLE{\fam \FAM \FONTNAME}' 
  99. %       to the definition of \@FONTSIZE.
  100. %    3. Executes \@FONTSIZE \STYLE.
  101. %
  102. % \@nohyphens\STYLE\@FONTSIZE
  103. %   Used right after \@getfont to set \hyphenchar of the new font to -1,
  104. %   thereby prohibiting hyphenation.  It is used with \tt fonts.
  105. %   (\@nohyphens was added on 12/18/85)
  106. %
  107. % \@subfont \STYLE \REPSTYLE 
  108. %   \STYLE, \REPSTYLE = type style commands.
  109. %   Types warning message and defines uses \REPSTYLE.
  110. %
  111. % \@onesizefont \STYLE {LOADING.INFO}
  112. %   Defines \STYLE to be a typestyle that exists only for the \normalsize
  113. %   size.  It produces the font specified by LOADING.INFO
  114. %
  115. % \@addfontinfo\@FONTSIZE{DEFS}
  116. %    Expands DEFS and adds to the definition of \@FONTSIZE. Items that should 
  117. %    not be expanded should be protected with \@prtct---except no protection
  118. %    is needed for '\def\foo', only for the contents of the definition.
  119. %
  120. % \@nomath\CS : Types a warning '\CS used in math mode' if encountered
  121. %    in math mode.
  122.  
  123. % Remove \outer from definition of \newfam
  124. \def\newfam{\alloc@8\fam\chardef\sixt@@n}
  125.  
  126. \def\@setsize#1#2#3#4{\@nomath#1\let\@currsize#1\baselineskip
  127.    #2\setbox\strutbox\hbox{\vrule height.7\baselineskip
  128.       depth.3\baselineskip width\z@}\baselineskip\baselinestretch\baselineskip
  129.    \normalbaselineskip\baselineskip#3#4}
  130.  
  131. \newif\if@bold
  132.  
  133. \let\@prtct=\relax
  134.  
  135. \def\@addfontinfo#1#2{{\def\@prtct{\noexpand\@prtct\noexpand}\def\def{\noexpand
  136.     \def\noexpand}\xdef#1{#1#2}}}
  137.  
  138. \def\@getfont#1#2#3#4{\@ifundefined{\string #1\string #3}{\global\expandafter
  139.     \font \csname \string #1\string #3\endcsname #4\relax 
  140.      \@addfontinfo#3{\textfont #2\csname \string #1\string #3\endcsname 
  141.      \scriptfont #2\csname \string #1\string #3\endcsname 
  142.      \scriptscriptfont #2\csname \string #1\string #3\endcsname 
  143.      \def#1{\fam #2\csname\string #1\string #3\endcsname}}}{}#3#1}
  144.  
  145. \def\@nohyphens#1#2{\global\expandafter \hyphenchar\csname 
  146.    \string #1\string #2\endcsname \m@ne}
  147.  
  148. \def\@subfont#1#2{\@warning{No \string#1\space typeface in 
  149.         this size, using \string#2}#2}
  150.  
  151. \def\@onesizefont#1#2{\expandafter\newfam\csname fm\string#1\endcsname
  152.   \global\expandafter\font\csname ft\string#1\endcsname #2\relax
  153.   \gdef#1{\ifx \@currsize\normalsize \@ftfam#1\else
  154.   \@warning{Typeface \string#1\space available only in 
  155.   \string\normalsize, using \string\rm}\gdef #1{\ifx \@currsize\normalsize 
  156.   \textfont\@fontfam#1 \scriptfont\@fontfam#1 \scriptscriptfont
  157.   \@fontfam#1\@ftfam#1\else \rm\fi}#1\fi}#1}
  158.  
  159. \def\@ftfam#1{\fam\csname fm\string#1\endcsname\csname ft\string#1\endcsname}
  160.  
  161. \def\@nomath#1{\ifmmode \@warning{\string#1\space in math mode.}\fi}
  162. \def\@nomathbold{\ifmmode \@warning{\string\mathbold\space in math mode.}\fi}
  163.  
  164. % The following definitions save token space.  E.g., using \@height 
  165. % instead of height saves 5 tokens at the cost in time of one macro 
  166. % expansion.
  167.  
  168. \def\@height{height}
  169. \def\@depth{depth}
  170. \def\@width{width}
  171.  
  172. %% FONT-CUSTOMIZING:  The following \font commands define the
  173. %% preloaded LaTeX fonts.  Font names should be changed to cause
  174. %% different fonts to be loaded in place of these particular fonts.
  175. %% \font commands should be added or deleted to change which fonts
  176. %% are preloaded.
  177.  
  178. \input psnames.tex
  179.  
  180. \xdef\PSnorm{\TimesR}
  181. \xdef\PSital{\TimesI}
  182. \xdef\PSbold{\TimesB}
  183. \xdef\PSboit{\TimesBI}
  184.  
  185. \xdef\PSslan{\TimesS}
  186. \xdef\PSsltt{\CourierO}
  187. \xdef\PStype{\Courier}
  188. \xdef\PSsans{\Helv}
  189. \xdef\PSsani{\HelvO}
  190. \xdef\PSsanb{\HelvB}
  191. \xdef\PSsymb{\Symbol}
  192.  
  193. \def\atvpt   { at 5pt}
  194. \def\atvipt  { at 6pt}
  195. \def\atviipt { at 7pt}
  196. \def\atviiipt{ at 8pt}
  197. \def\atixpt  { at 9pt}
  198. \def\atxpt   { at 10pt}
  199. \def\@halfmag{ at 10.95pt}
  200. \def\@magi   { at 12pt}
  201. \def\@magii  { at 14.4pt}
  202. \def\@magiii { at 17.28pt}
  203. \def\@magiv  { at 20.74pt}
  204. \def\@magv   { at 24.88pt}
  205.  
  206. % five point
  207.  \font\fivrm  = \PSnorm     \atvpt % normal
  208.  \font\fivmi  = cmmi5              % math italic
  209.     \skewchar\fivmi ='177          % for placement of accents
  210. %\font\fivmib = cmmib10     \atvpt % bold math italic
  211.  \font\fivsy  = cmsy5              % math symbols
  212.     \skewchar\fivsy ='60           % for placement of math accents
  213. %\font\fivsyb = cmbsy10     \atvpt % bold math symbols
  214. %\font\fivit  = \PSital     \atvpt % text italic
  215. %\font\fivsl  = \PSslan     \atvpt % slanted
  216. %\font\fivbf  = \PSbold     \atvpt % extended bold
  217. %\font\fivbfs = \PSboit     \atvpt % extended bold slanted
  218. %\font\fivtt  = \PStype     \atvpt % typewriter
  219. %\font\fivtti = cmitt10     \atvpt % italic typewriter
  220. %\font\fivtts = \PSsltt     \atvpt % slanted typewriter
  221. %\font\fivsf  = \PSsans     \atvpt % sans serif
  222. %\font\fivsfi = \PSsani     \atvpt % italic sans serif
  223. %\font\fivsfb = \PSsanb     \atvpt % bold sans serif
  224. %\font\fivsc  = cmcsc10     \atvpt % small caps
  225.  \font\fivly  = lasy5              % LaTeX symbols
  226. %\font\fivlyb = lasyb10     \atvpt % LaTeX symbols
  227. %\font\fivuit = cmu10       \atvpt % unslanted italic
  228.  
  229. % six point
  230.  \font\sixrm  = \PSnorm    \atvipt % normal
  231.  \font\sixmi  = cmmi6              % math italic
  232.     \skewchar\sixmi ='177          % for placement of accents
  233. %\font\sixmib = cmmib10    \atvipt % bold math italic
  234.  \font\sixsy  = cmsy6              % math symbols
  235.     \skewchar\sixsy ='60           % for placement of math accents
  236. %\font\sixsyb = cmbsy10    \atvipt % bold math symbols
  237. %\font\sixit  = \PSital    \atvipt % text italic
  238. %\font\sixsl  = \PSslan    \atvipt % slanted
  239. %\font\sixbf  = \PSbold    \atvipt % extended bold
  240. %\font\sixbfs = \PSboit    \atvipt % extended bold slanted
  241. %\font\sixtt  = \PStype    \atvipt % typewriter
  242. %\font\sixtti = cmitt10    \atvipt % italic typewriter
  243. %\font\sixtts = \PSsltt    \atvipt % slanted typewriter
  244. %\font\sixsf  = \PSsans    \atvipt % sans serif
  245. %\font\sixsfi = \PSsani    \atvipt % italic sans serif
  246. %\font\sixsfb = \PSsanb    \atvipt % bold sans serif
  247. %\font\sixsc  = cmcsc10    \atvipt % small caps
  248.  \font\sixly  = lasy6              % LaTeX symbols
  249. %\font\sixlyb = lasyb10    \atvipt % LaTeX symbols
  250. %\font\sixuit = cmu10      \atvipt % unslanted italic
  251.  
  252. % seven point
  253.  \font\sevrm  = \PSnorm   \atviipt % normal
  254.  \font\sevmi  = cmmi7              % math italic
  255.     \skewchar\sevmi ='177          % for placement of accents
  256. %\font\sevmib = cmmib10   \atviipt % bold math italic
  257.  \font\sevsy  = cmsy7              % math symbols
  258.     \skewchar\sevsy ='60           % for placement of math accents
  259. %\font\sevsyb = cmbsy10   \atviipt % bold math symbols
  260.  \font\sevit  = \PSital   \atviipt % text italic
  261. %\font\sevsl  = \PSslan   \atviipt % slanted
  262. %\font\sevbf  = \PSbold   \atviipt % extended bold
  263. %\font\sevbfs = \PSboit   \atviipt % extended bold slanted
  264. %\font\sevtt  = \PStype   \atviipt % typewriter
  265. %\font\sevtti = cmitt10   \atviipt % italic typewriter
  266. %\font\sevtts = \PSsltt   \atviipt % slanted typewriter
  267. %\font\sevsf  = \PSsans   \atviipt % sans serif
  268. %\font\sevsfi = \PSsani   \atviipt % italic sans serif
  269. %\font\sevsfb = \PSsanb   \atviipt % bold sans serif
  270. %\font\sevsc  = cmcsc10   \atviipt % small caps
  271.  \font\sevly  = lasy7              % LaTeX symbols
  272. %\font\sevlyb = lasyb10   \atviipt % LaTeX symbols
  273. %\font\sevuit = cmu10     \atviipt % unslanted italic
  274.  
  275. % eight point
  276.  \font\egtrm  = \PSnorm  \atviiipt % normal
  277.  \font\egtmi  = cmmi8              % math italic
  278.     \skewchar\egtmi ='177          % for placement of accents
  279. %\font\egtmib = cmmib10  \atviiipt % bold math italic
  280.  \font\egtsy  = cmsy8              % math symbols
  281.     \skewchar\egtsy ='60           % for placement of math accents
  282. %\font\egtsyb = cmbsy10  \atviiipt % bold math symbols
  283.  \font\egtit  = \PSital  \atviiipt % text italic
  284. %\font\egtsl  = \PSslan  \atviiipt % slanted
  285. %\font\egtbf  = \PSbold  \atviiipt % extended bold
  286. %\font\egtbfs = \PSboit  \atviiipt % extended bold slanted
  287. %\font\egttt  = \PStype  \atviiipt % typewriter
  288. %\font\egttti = cmitt10  \atviiipt % italic typewriter
  289. %\font\egttts = \PSsltt  \atviiipt % slanted typewriter
  290. %\font\egtsf  = \PSsans  \atviiipt % sans serif
  291. %\font\egtsfi = \PSsani  \atviiipt % italic sans serif
  292. %\font\egtsfb = \PSsanb  \atviiipt % bold sans serif
  293. %\font\egtsc  = cmcsc10  \atviiipt % small caps
  294.  \font\egtly  = lasy8              % LaTeX symbols
  295. %\font\egtlyb = lasyb10  \atviiipt % LaTeX symbols
  296. %\font\egtuit = cmu10    \atviiipt % unslanted italic
  297.  
  298.  
  299. % nine point
  300.  \font\ninrm  = \PSnorm    \atixpt % normal
  301.  \font\ninmi  = cmmi9              % math italic
  302.     \skewchar\ninmi ='177          % for placement of accents
  303. %\font\ninmib = cmmib10    \atixpt % bold math italic
  304.  \font\ninsy  = cmsy9              % math symbols
  305.     \skewchar\ninsy ='60           % for placement of math accents
  306. %\font\ninsyb = cmbsy10    \atixpt % bold math symbols
  307.  \font\ninit  = \PSital    \atixpt % text italic
  308. %\font\ninsl  = \PSslan    \atixpt % slanted
  309.  \font\ninbf  = \PSbold    \atixpt % extended bold
  310. %\font\ninbfs = \PSboit    \atixpt % extended bold slanted
  311.  \font\nintt  = \PStype    \atixpt % typewriter
  312.     \hyphenchar\nintt = -1         % suppress hyphenation in \tt font
  313. %\font\nintti = cmitt10    \atixpt % italic typewriter
  314. %\font\nintts = \PSsltt    \atixpt % slanted typewriter
  315. %\font\ninsf  = \PSsans    \atixpt % sans serif
  316. %\font\ninsfi = \PSsani    \atixpt % italic sans serif
  317. %\font\ninsfb = \PSsanb    \atixpt % bold sans serif
  318. %\font\ninsc  = cmcsc10    \atixpt % small caps
  319.  \font\ninly  = lasy9              % LaTeX symbols
  320. %\font\ninlyb = lasyb10    \atixpt % LaTeX symbols
  321. %\font\ninuit = cmu10      \atixpt % unslanted italic
  322.  
  323. % ten point
  324.  \font\tenrm  = \PSnorm     \atxpt % normal
  325.  \font\tenmi  = cmmi10             % math italic
  326.     \skewchar\tenmi ='177          % for placement of accents
  327. %\font\tenmib = cmmib10            % bold math italic
  328.  \font\tensy  = cmsy10             % math symbols
  329.     \skewchar\tensy ='60           % for placement of math accents
  330. %\font\tensyb = cmbsy10            % bold symbols
  331.  \font\tenit  = \PSital     \atxpt % text italic
  332.  \font\tensl  = \PSslan     \atxpt % slanted
  333.  \font\tenbf  = \PSbold     \atxpt % extended bold
  334.  \font\tenbfs = \PSboit     \atxpt % extended bold slanted
  335.  \font\tentt  = \PStype     \atxpt % typewriter
  336.     \hyphenchar\tentt = -1         % suppress hyphenation in \tt font
  337. %\font\tentti = cmitt10            % italic typewriter
  338. %\font\tentts = \PSsltt     \atxpt % slanted typewriter
  339.  \font\tensf  = \PSsans     \atxpt % sans serif
  340. %\font\tensfi = \PSsani     \atxpt % italic sans serif
  341. %\font\tensfb = \PSsanb     \atxpt % bold sans serif
  342. %\font\tensc  = cmcsc10            % small caps
  343.  \font\tenly  = lasy10             % LaTeX symbols
  344. %\font\tenlyb = lasyb10            % bold LaTeX symbols
  345. %\font\tenuit = cmu10              % unslanted italic
  346.  
  347. % eleven point
  348.  \font\elvrm  = \PSnorm    \@halfmag % normal
  349.  \font\elvmi  = cmmi10     \@halfmag % math italic
  350.     \skewchar\elvmi ='177            % for placement of accents
  351. %\font\elvmib = cmmib10    \@halfmag % bold math italic
  352.  \font\elvsy  = cmsy10     \@halfmag % math symbols
  353.     \skewchar\elvsy ='60             % for placement of math accents
  354. %\font\elvsyb = cmbsy10    \@halfmag % bold symbols
  355.  \font\elvit  = \PSital    \@halfmag % text italic
  356.  \font\elvsl  = \PSslan    \@halfmag % slanted
  357.  \font\elvbf  = \PSbold    \@halfmag % exelvded bold
  358. %\font\elvbfs = \PSboit    \@halfmag % exelvded bold slanted
  359.  \font\elvtt  = \PStype    \@halfmag % typewriter
  360.     \hyphenchar\elvtt = -1           % suppress hyphenation in \tt font
  361. %\font\elvtti = cmitt10    \@halfmag % italic typewriter
  362. %\font\elvtts = \PSsltt    \@halfmag % slanted typewriter
  363.  \font\elvsf  = \PSsans    \@halfmag % sans serif
  364. %\font\elvsfi = \PSsani    \@halfmag % italic sans serif
  365. %\font\elvsfb = \PSsanb    \@halfmag % bold sans serif
  366. %\font\elvsc  = cmcsc10    \@halfmag % small caps
  367.  \font\elvly  = lasy10     \@halfmag % LaTeX symbols
  368. %\font\elvlyb = lasyb10    \@halfmag % bold LaTeX symbols
  369. %\font\elvuit = cmu10      \@halfmag % unslanted italic
  370.  
  371. % twelve point
  372.  \font\twlrm  = \PSnorm      \@magi  % normal
  373.  \font\twlmi  = cmmi10       \@magi  % math italic
  374.     \skewchar\twlmi ='177            % for placement of accents
  375. %\font\twlmib = cmmib10      \@magi  % bold math italic
  376.  \font\twlsy  = cmsy10       \@magi  % math symbols
  377.     \skewchar\twlsy ='60             % for placement of math accents
  378. %\font\twlsyb = cmbsy10      \@magi  % bold symbols
  379.  \font\twlit  = \PSital      \@magi  % text italic
  380.  \font\twlsl  = \PSslan      \@magi  % slanted
  381.  \font\twlbf  = \PSbold      \@magi  % extended bold
  382. %\font\twlbfs = \PSboit      \@magi  % extended bold slanted
  383.  \font\twltt  = \PStype      \@magi  % typewriter
  384.     \hyphenchar\twltt = -1           % suppress hyphenation in \tt font
  385. %\font\twltti = cmitt10      \@magi  % italic typewriter
  386. %\font\twltts = \PSsltt      \@magi  % slanted typewriter
  387.  \font\twlsf  = \PSsans      \@magi  % sans serif
  388. %\font\twlsfi = \PSsani      \@magi  % italic sans serif
  389. %\font\twlsfb = \PSsanb      \@magi  % bold sans serif
  390. %\font\twlsc  = cmcsc10      \@magi  % small caps
  391.  \font\twlly  = lasy10       \@magi  % LaTeX symbols
  392. %\font\twllyb = lasyb10      \@magi  % bold LaTeX symbols
  393. %\font\twluit = cmu10        \@magi  % unslanted italic
  394.  
  395. % fourteen point
  396.  \font\frtnrm  = \PSnorm        \@magii % normal
  397.  \font\frtnmi  = cmmi10         \@magii % math italic
  398.     \skewchar\frtnmi ='177              % for placement of accents
  399. %\font\frtnmib = cmmib10        \@magii % bold math italic
  400.  \font\frtnsy  = cmsy10         \@magii % math symbols
  401.     \skewchar\frtnsy ='60               % for placement of math accents
  402. %\font\frtnsyb = cmbsy10        \@magii % bold symbols
  403. %\font\frtnit  = \PSital        \@magii % text italic
  404. %\font\frtnsl  = \PSslan        \@magii % slanted
  405.  \font\frtnbf  = \PSbold        \@magii % extended bold
  406. %\font\frtnbfs = \PSboit        \@magii % extended bold slanted
  407. %\font\frtntt  = \PStype        \@magii % typewriter
  408. %\font\frtntti = cmitt10        \@magii % italic typewriter
  409. %\font\frtntts = \PSsltt        \@magii % slanted typewriter
  410. %\font\frtnsf  = \PSsans        \@magii % sans serif
  411. %\font\frtnsfi = \PSsani        \@magii % italic sans serif
  412. %\font\frtnsfb = \PSsanb        \@magii % bold sans serif
  413. %\font\frtnsc  = cmcsc10        \@magii % small caps
  414.  \font\frtnly  = lasy10         \@magii % LaTeX symbols
  415. %\font\frtnlyb = lasyb10        \@magii % bold LaTeX symbols
  416. %\font\frtnuit = cmu10          \@magii % unslanted italic
  417.  
  418. % seventeen point
  419.  \font\svtnrm  = \PSnorm        \@magiii % normal
  420.  \font\svtnmi  = cmmi10         \@magiii % math italic
  421.     \skewchar\svtnmi ='177               % for placement of accents
  422. %\font\svtnmib = cmmib10        \@magiii % bold math italic
  423.  \font\svtnsy  = cmsy10         \@magiii % math symbols
  424.     \skewchar\svtnsy ='60                % for placement of math accents
  425. %\font\svtnsyb = cmbsy10        \@magiii % bold symbols
  426. %\font\svtnit  = \PSital        \@magiii % text italic
  427. %\font\svtnsl  = \PSslan        \@magiii % slanted
  428.  \font\svtnbf  = \PSbold        \@magiii % extended bold
  429. %\font\svtnbfs = \PSboit        \@magiii % extended bold slanted
  430. %\font\svtntt  = \PStype        \@magiii % typewriter
  431. %\font\svtntti = cmitt10        \@magiii % italic typewriter
  432. %\font\svtntts = \PSsltt        \@magiii % slanted typewriter
  433. %\font\svtnsf  = \PSsans        \@magiii % sans serif
  434. %\font\svtnsfi = \PSsani        \@magiii % italic sans serif
  435. %\font\svtnsfb = \PSsanb        \@magiii % bold sans serif
  436. %\font\svtnsc  = cmcsc10        \@magiii % small caps
  437.  \font\svtnly  = lasy10         \@magiii % LaTeX symbols
  438. %\font\svtnlyb = lasyb10        \@magiii % bold LaTeX symbols
  439. %\font\svtnuit = cmu10          \@magiii % unslanted italic
  440.  
  441. % twenty point
  442.  \font\twtyrm  = \PSnorm         \@magiv % normal
  443.  \font\twtymi  = cmmi10          \@magiv % math italic
  444.     \skewchar\twtymi ='177               % for placement of accents
  445. %\font\twtymib = cmmib10         \@magiv % bold math italic
  446.  \font\twtysy  = cmsy10          \@magiv % math symbols
  447.     \skewchar\twtysy ='60                % for placement of math accents
  448. %\font\twtysyb = cmbsy10         \@magiv % bold symbols
  449. %\font\twtyit  = \PSital         \@magiv % text italic
  450. %\font\twtysl  = \PSslan         \@magiv % slanted
  451. %\font\twtybf  = \PSbold         \@magiv % extended bold
  452. %\font\twtybfs = \PSboit         \@magiv % extended bold slanted
  453. %\font\twtytt  = \PStype         \@magiv % typewriter
  454. %\font\twtytti = cmitt10         \@magiv % italic typewriter
  455. %\font\twtytts = \PSsltt         \@magiv % slanted typewriter
  456. %\font\twtysf  = \PSsans         \@magiv % sans serif
  457. %\font\twtysfi = \PSsani         \@magiv % italic sans serif
  458. %\font\twtysfb = \PSsanb         \@magiv % bold sans serif
  459. %\font\twtysc  = cmcsc10         \@magiv % small caps
  460.  \font\twtyly  = lasy10          \@magiv % LaTeX symbols
  461. %\font\twtylyb = lasyb10         \@magiv % bold LaTeX symbols
  462. %\font\twtyuit = cmu10           \@magiv % unslanted italic
  463.  
  464. % twenty-five point
  465.  \font\twfvrm  = \PSnorm          \@magv % normal
  466. %\font\twfvmi  = cmmi10           \@magv % math italic
  467. %\font\twfvmib = cmmib10          \@magv % bold math italic
  468. %\font\twfvsy  = cmsy10           \@magv % math symbols
  469. %\font\twfvsyb = cmbsy10          \@magv % bold symbols
  470. %\font\twfvit  = \PSital          \@magv % text italic
  471. %\font\twfvsl  = \PSslan          \@magv % slanted
  472. %\font\twfvbf  = \PSbold          \@magv % extended bold
  473. %\font\twfvbfs = \PSboit          \@magv % extended bold slanted
  474. %\font\twfvtt  = \PStype          \@magv % typewriter
  475. %\font\twfvtti = cmitt10          \@magv % italic typewriter
  476. %\font\twfvtts = \PSsltt          \@magv % slanted typewriter
  477. %\font\twfvsf  = \PSsans          \@magv % sans serif
  478. %\font\twfvsfi = \PSsani          \@magv % italic sans serif
  479. %\font\twfvsfb = \PSsanb          \@magv % bold sans serif
  480. %\font\twfvsc  = cmcsc10          \@magv % small caps
  481. %\font\twfvly  = lasy10           \@magv % LaTeX symbols
  482. %\font\twfvlyb = lasyb10          \@magv % bold LaTeX symbols
  483. %\font\twfvuit = cmu10            \@magv % unslanted italic
  484.  
  485. % Math extension
  486. \font\tenex    = cmex10
  487.  
  488. % line & circle fonts 
  489. \font\tenln    = line10
  490. \font\tenlnw   = linew10  
  491. \font\tencirc  = circle10
  492. \font\tencircw = circlew10 
  493.  
  494. % Change made 6 May 86: `\@warning' replaced by `\immediate\write 15' 
  495. % since it's not defined when lfonts.tex is read by lplain.tex.
  496. %
  497. \ifnum\fontdimen8\tenln=\fontdimen8\tencirc \else 
  498.   \immediate\write 15{Incompatible thin line and circle fonts}\fi
  499. \ifnum\fontdimen8\tenlnw=\fontdimen8\tencircw \else 
  500.   \immediate\write 15{Incompatible thick line and circle fonts}\fi
  501.  
  502.  
  503. % protected font names
  504. \def\rm{\protect\prm}
  505. \def\it{\protect\pit}
  506. \def\bf{\protect\pbf}
  507. \def\sl{\protect\psl}
  508. \def\sf{\protect\psf}
  509. \def\sc{\protect\psc}
  510. \def\tt{\protect\ptt}
  511. \def\sy{\protect\psy}
  512.  
  513. %% FONT-CUSTOMIZING:  The following definitions define certain commands
  514. %% to be abbreviations for certain font names.  These commands are used
  515. %% below in \@getfont commands, which load the loaded-on-demand fonts.
  516. %% This is done only to save space.  To change the fonts that are loaded
  517. %% on demand, one can either change these definitions or else change
  518. %% the arguments of the \@getfont commands.  
  519. %%
  520. \def\@mbi{cmmib10}
  521. \def\@mbsy{cmbsy10}
  522. \def\@mcsc{cmcsc10}
  523. \def\@lasyb{lasyb10}
  524.  
  525. % families
  526.  
  527. \newfam\itfam      % \it is family 4
  528. \newfam\slfam      % \sl is family 5
  529. \newfam\bffam      % \bf is family 6
  530. \newfam\ttfam      % \tt is family 7
  531. \newfam\sffam      % \sf is family 8
  532. \newfam\scfam      % \sc is family 9
  533. \newfam\lyfam      % \ly is family 10
  534. \newfam\syfam      % \sy is family 11
  535.  
  536. \def\cal{\fam\tw@}
  537. \def\mit{\fam\@ne}
  538.  
  539. \def\@setstrut{\setbox\strutbox=\hbox{\vrule \@height .7\baselineskip
  540.     \@depth .3\baselineskip \@width\z@}}
  541.  
  542.  
  543. %% FONT-CUSTOMIZING: The commands \vpt, \vipt, ... , \xxvpt perform all
  544. %% the declarations needed to change the type size to 5pt, 6pt, ... ,
  545. %% 25pt.  To see how this works, consider the definition of \viipt,
  546. %% which determines the fonts used in a 7pt type size.  The command
  547. %%    \def\pit{\fam\itfam\sevit}
  548. %% means that the \it command causes the preloaded \sevit font to
  549. %% be used--this font was defined earlier with a \font\sevit...
  550. %% command.  The commands
  551. %%     \textfont\itfam\sevit 
  552. %%     \scriptfont\itfam\sevit 
  553. %%     \scriptscriptfont\itfam\sevit 
  554. %% tell TeX to use the \sevit font for all three math-mode sizes
  555. %% (text, script, and scriptscript) for the 7pt size.  
  556. %% The fonts appearing in these commands must be preloaded.
  557. %% 
  558. %% The command 
  559. %%     \def\pbf{\@getfont\pbf\bffam\@viipt{cmbx7}}
  560. %% declares \bf to use a loaded-on-demand font--namely, the font
  561. %% cmbx7.
  562. %%
  563. %% The command
  564. %%     \def\ptt{\@subfont\tt\rm}
  565. %% declares that the \tt font is unavailable in the 7pt size, so
  566. %% the \rm font is used instead.  (The substituted type style should
  567. %% correspond to a preloaded size.)
  568.  
  569. \def\vpt{\textfont\z@\fivrm
  570.   \scriptfont\z@\fivrm \scriptscriptfont\z@\fivrm
  571. \textfont\@ne\fivmi \scriptfont\@ne\fivmi \scriptscriptfont\@ne\fivmi
  572. \textfont\tw@\fivsy \scriptfont\tw@\fivsy \scriptscriptfont\tw@\fivsy
  573. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  574. \def\prm{\fam\z@\fivrm}%
  575. \def\unboldmath{\everymath{}\everydisplay{}\@nomath
  576.   \unboldmath\fam\@ne\@boldfalse}\@boldfalse
  577. \def\boldmath{\@subfont\boldmath\unboldmath}%
  578. \def\pit{\@getfont\pit\itfam\@vpt{\PSital \atvpt}}%
  579. \def\psl{\@subfont\sl\it}%
  580. \def\pbf{\@getfont\pbf\bffam\@vpt{\PSbold \atvpt}}%
  581. \def\ptt{\@subfont\tt\rm}%
  582. \def\psf{\@subfont\sf\rm}%
  583. \def\psc{\@subfont\sc\rm}%
  584. \def\ly{\fam\lyfam\fivly}\textfont\lyfam\fivly
  585.     \scriptfont\lyfam\fivly \scriptscriptfont\lyfam\fivly
  586. \def\psy{\@getfont\psy\syfam\@vpt{\PSsymb \atvpt}}%
  587. \@setstrut\rm}
  588.  
  589. \def\@vpt{}
  590.  
  591. \def\vipt{\textfont\z@\sixrm
  592.   \scriptfont\z@\sixrm \scriptscriptfont\z@\sixrm
  593. \textfont\@ne\sixmi \scriptfont\@ne\sixmi \scriptscriptfont\@ne\sixmi
  594. \textfont\tw@\sixsy \scriptfont\tw@\sixsy \scriptscriptfont\tw@\sixsy
  595. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  596. \def\prm{\fam\z@\sixrm}%
  597. \def\unboldmath{\everymath{}\everydisplay{}\@nomath
  598.   \unboldmath\@boldfalse}\@boldfalse
  599. \def\boldmath{\@subfont\boldmath\unboldmath}%
  600. \def\pit{\@getfont\pit\itfam\@vipt{\PSital\atvipt}}%
  601. \def\psl{\@subfont\sl\rm}%
  602. \def\pbf{\@getfont\pbf\bffam\@vipt{\PSbold\atvipt}}%
  603. \def\ptt{\@subfont\tt\rm}%
  604. \def\psf{\@subfont\sf\rm}%
  605. \def\psc{\@subfont\sc\rm}%
  606. \def\ly{\fam\lyfam\sixly}\textfont\lyfam\sixly
  607.     \scriptfont\lyfam\sixly \scriptscriptfont\lyfam\sixly
  608. \def\psy{\@getfont\psy\syfam\@vipt{\PSsymb\atvipt}}%
  609. \@setstrut\rm}
  610.  
  611. \def\@vipt{}
  612.  
  613. \def\viipt{\textfont\z@\sevrm
  614.   \scriptfont\z@\sixrm \scriptscriptfont\z@\fivrm
  615. \textfont\@ne\sevmi \scriptfont\@ne\fivmi \scriptscriptfont\@ne\fivmi
  616. \textfont\tw@\sevsy \scriptfont\tw@\fivsy \scriptscriptfont\tw@\fivsy
  617. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  618. \def\prm{\fam\z@\sevrm}%
  619. \def\unboldmath{\everymath{}\everydisplay{}\@nomath
  620. \unboldmath\@boldfalse}\@boldfalse
  621. \def\boldmath{\@subfont\boldmath\unboldmath}%
  622. \def\pit{\fam\itfam\sevit}\textfont\itfam\sevit
  623.    \scriptfont\itfam\sevit \scriptscriptfont\itfam\sevit
  624. \def\psl{\@subfont\sl\it}%
  625. \def\pbf{\@getfont\pbf\bffam\@viipt{\PSbold\atvipt}}%
  626. \def\ptt{\@subfont\tt\rm}%
  627. \def\psf{\@subfont\sf\rm}%
  628. \def\psc{\@subfont\sc\rm}%
  629. \def\ly{\fam\lyfam\sevly}\textfont\lyfam\sevly
  630.     \scriptfont\lyfam\fivly \scriptscriptfont\lyfam\fivly
  631. \def\psy{\@getfont\psy\syfam\@viipt{\PSsymb\atviipt}}%
  632. \@setstrut \rm}
  633.  
  634. \def\@viipt{}
  635.  
  636. \def\viiipt{\textfont\z@\egtrm
  637.   \scriptfont\z@\sixrm \scriptscriptfont\z@\fivrm
  638. \textfont\@ne\egtmi \scriptfont\@ne\sixmi \scriptscriptfont\@ne\fivmi
  639. \textfont\tw@\egtsy \scriptfont\tw@\sixsy \scriptscriptfont\tw@\fivsy
  640. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  641. \def\prm{\fam\z@\egtrm}%
  642. \def\unboldmath{\everymath{}\everydisplay{}\@nomath
  643. \unboldmath\@boldfalse}\@boldfalse
  644. \def\boldmath{\@subfont\boldmath\unboldmath}%
  645. \def\pit{\fam\itfam\egtit}\textfont\itfam\egtit
  646.    \scriptfont\itfam\sevit \scriptscriptfont\itfam\sevit
  647. \def\psl{\@getfont\psl\slfam\@viiipt{\PSslan \atviiipt}}%
  648. \def\pbf{\@getfont\pbf\bffam\@viiipt{\PSbold \atviiipt}}%
  649. \def\ptt{\@getfont\ptt\ttfam\@viiipt{\PStype \atviiipt}\@nohyphens\ptt\@viiipt}%
  650. \def\psf{\@getfont\psf\sffam\@viiipt{\PSsans \atviiipt}}%
  651. \def\psc{\@getfont\psc\scfam\@viiipt{\@mcsc \atviiipt}}%
  652. \def\ly{\fam\lyfam\egtly}\textfont\lyfam\egtly
  653.     \scriptfont\lyfam\sixly \scriptscriptfont\lyfam\fivly
  654. \def\psy{\@getfont\psy\syfam\@viiipt{\PSsymb \atviiipt}}%
  655. \@setstrut \rm}
  656.  
  657. \def\@viiipt{}
  658.  
  659. \def\ixpt{\textfont\z@\ninrm
  660.   \scriptfont\z@\sixrm \scriptscriptfont\z@\fivrm
  661. \textfont\@ne\ninmi \scriptfont\@ne\sixmi \scriptscriptfont\@ne\fivmi
  662. \textfont\tw@\ninsy \scriptfont\tw@\sixsy \scriptscriptfont\tw@\fivsy
  663. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  664. \def\prm{\fam\z@\ninrm}%
  665. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  666.     \@boldfalse}\@boldfalse
  667. \def\boldmath{\@subfont\boldmath\unboldmath}%
  668. \def\pit{\fam\itfam\ninit}\textfont\itfam\ninit
  669.    \scriptfont\itfam\sevit \scriptscriptfont\itfam\sevit
  670. \def\psl{\@getfont\psl\slfam\@ixpt{\PSslan\atixpt}}%
  671. \def\pbf{\fam\bffam\ninbf}\textfont\bffam\ninbf
  672.    \scriptfont\bffam\ninbf \scriptscriptfont\bffam\ninbf
  673. \def\ptt{\fam\ttfam\nintt}\textfont\ttfam\nintt
  674.    \scriptfont\ttfam\nintt \scriptscriptfont\ttfam\nintt
  675. \def\psf{\@getfont\psf\sffam\@ixpt{\PSsans\atixpt}}%
  676. \def\psc{\@getfont\psc\scfam\@ixpt{\@mcsc\atixpt}}%
  677. \def\ly{\fam\lyfam\ninly}\textfont\lyfam\ninly
  678.    \scriptfont\lyfam\sixly \scriptscriptfont\lyfam\fivly
  679. \def\psy{\@getfont\psy\syfam\@ixpt{\PSsymb\atixpt}}%
  680. \@setstrut \rm}
  681.  
  682. \def\@ixpt{}
  683.  
  684. \def\xpt{\textfont\z@\tenrm
  685.   \scriptfont\z@\sevrm \scriptscriptfont\z@\fivrm
  686. \textfont\@ne\tenmi \scriptfont\@ne\sevmi \scriptscriptfont\@ne\fivmi
  687. \textfont\tw@\tensy \scriptfont\tw@\sevsy \scriptscriptfont\tw@\fivsy
  688. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  689. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  690.           \textfont\@ne\tenmi
  691.           \textfont\tw@\tensy \textfont\lyfam\tenly
  692.           \@boldfalse}\@boldfalse
  693. \def\boldmath{\@ifundefined{tenmib}{\global\font\tenmib\@mbi
  694.    \global\font\tensyb\@mbsy
  695.    \global\font\tenlyb\@lasyb\relax\@addfontinfo\@xpt
  696.    {\def\boldmath{\everymath{\mit}\everydisplay{\mit}\@prtct\@nomathbold
  697.         \textfont\@ne\tenmib \textfont\tw@\tensyb
  698.         \textfont\lyfam\tenlyb \@prtct\@boldtrue}}}{}\@xpt\boldmath}%
  699. \def\prm{\fam\z@\tenrm}%
  700. \def\pit{\fam\itfam\tenit}\textfont\itfam\tenit \scriptfont\itfam\sevit
  701.     \scriptscriptfont\itfam\sevit
  702. \def\psl{\fam\slfam\tensl}\textfont\slfam\tensl
  703.      \scriptfont\slfam\tensl \scriptscriptfont\slfam\tensl
  704. \def\pbf{\fam\bffam\tenbf}\textfont\bffam\tenbf
  705.     \scriptfont\bffam\tenbf \scriptscriptfont\bffam\tenbf
  706. \def\ptt{\fam\ttfam\tentt}\textfont\ttfam\tentt
  707.     \scriptfont\ttfam\tentt \scriptscriptfont\ttfam\tentt
  708. \def\psf{\fam\sffam\tensf}\textfont\sffam\tensf
  709.     \scriptfont\sffam\tensf \scriptscriptfont\sffam\tensf
  710. \def\psc{\@getfont\psc\scfam\@xpt{\@mcsc}}%
  711. \def\ly{\fam\lyfam\tenly}\textfont\lyfam\tenly
  712.    \scriptfont\lyfam\sevly \scriptscriptfont\lyfam\fivly
  713. \def\psy{\@getfont\psy\syfam\@xpt{\PSsymb\atxpt}}%
  714. \@setstrut \rm}
  715.  
  716. \def\@xpt{}
  717.  
  718. \def\xipt{\textfont\z@\elvrm
  719.   \scriptfont\z@\egtrm \scriptscriptfont\z@\sixrm
  720. \textfont\@ne\elvmi \scriptfont\@ne\egtmi \scriptscriptfont\@ne\sixmi
  721. \textfont\tw@\elvsy \scriptfont\tw@\egtsy \scriptscriptfont\tw@\sixsy
  722. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  723. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  724.           \textfont\@ne\elvmi \textfont\tw@\elvsy
  725.           \textfont\lyfam\elvly \@boldfalse}\@boldfalse
  726. \def\boldmath{\@ifundefined{elvmib}{\global\font\elvmib\@mbi\@halfmag
  727.          \global\font\elvsyb\@mbsy\@halfmag
  728.          \global\font\elvlyb\@lasyb\@halfmag\relax\@addfontinfo\@xipt
  729.          {\def\boldmath{\everymath{\mit}\everydisplay{\mit}\@prtct\@nomathbold
  730.                 \textfont\@ne\elvmib \textfont\tw@\elvsyb
  731.                 \textfont\lyfam\elvlyb\@prtct\@boldtrue}}}{}\@xipt\boldmath}%
  732. \def\prm{\fam\z@\elvrm}%
  733. \def\pit{\fam\itfam\elvit}\textfont\itfam\elvit
  734.    \scriptfont\itfam\egtit \scriptscriptfont\itfam\sevit
  735. \def\psl{\fam\slfam\elvsl}\textfont\slfam\elvsl
  736.     \scriptfont\slfam\tensl \scriptscriptfont\slfam\tensl
  737. \def\pbf{\fam\bffam\elvbf}\textfont\bffam\elvbf
  738.    \scriptfont\bffam\ninbf \scriptscriptfont\bffam\ninbf
  739. \def\ptt{\fam\ttfam\elvtt}\textfont\ttfam\elvtt
  740.    \scriptfont\ttfam\nintt \scriptscriptfont\ttfam\nintt
  741. \def\psf{\fam\sffam\elvsf}\textfont\sffam\elvsf
  742.     \scriptfont\sffam\tensf \scriptscriptfont\sffam\tensf
  743. \def\psc{\@getfont\psc\scfam\@xipt{\@mcsc \@halfmag}}%
  744. \def\ly{\fam\lyfam\elvly}\textfont\lyfam\elvly
  745.    \scriptfont\lyfam\egtly \scriptscriptfont\lyfam\sixly
  746. \def\psy{\@getfont\psy\syfam\@xipt{\PSsymb \@halfmag}}%
  747. \@setstrut \rm}
  748.  
  749. \def\@xipt{}
  750.  
  751. \def\xiipt{\textfont\z@\twlrm
  752.   \scriptfont\z@\egtrm \scriptscriptfont\z@\sixrm
  753. \textfont\@ne\twlmi \scriptfont\@ne\egtmi \scriptscriptfont\@ne\sixmi
  754. \textfont\tw@\twlsy \scriptfont\tw@\egtsy \scriptscriptfont\tw@\sixsy
  755. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  756. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  757.           \textfont\@ne\twlmi
  758.           \textfont\tw@\twlsy \textfont\lyfam\twlly
  759.           \@boldfalse}\@boldfalse
  760. \def\boldmath{\@ifundefined{twlmib}{\global\font\twlmib\@mbi  \@magi\global
  761.         \font\twlsyb\@mbsy  \@magi\global\font
  762.          \twllyb\@lasyb  \@magi\relax\@addfontinfo\@xiipt
  763.               {\def\boldmath{\everymath
  764.                 {\mit}\everydisplay{\mit}\@prtct\@nomathbold
  765.                 \textfont\@ne\twlmib \textfont\tw@\twlsyb
  766.                 \textfont\lyfam\twllyb\@prtct\@boldtrue}}}{}\@xiipt\boldmath}%
  767. \def\prm{\fam\z@\twlrm}%
  768. \def\pit{\fam\itfam\twlit}\textfont\itfam\twlit \scriptfont\itfam\egtit
  769.    \scriptscriptfont\itfam\sevit
  770. \def\psl{\fam\slfam\twlsl}\textfont\slfam\twlsl
  771.      \scriptfont\slfam\tensl \scriptscriptfont\slfam\tensl
  772. \def\pbf{\fam\bffam\twlbf}\textfont\bffam\twlbf
  773.    \scriptfont\bffam\ninbf \scriptscriptfont\bffam\ninbf
  774. \def\ptt{\fam\ttfam\twltt}\textfont\ttfam\twltt
  775.    \scriptfont\ttfam\nintt \scriptscriptfont\ttfam\nintt
  776. \def\psf{\fam\sffam\twlsf}\textfont\sffam\twlsf
  777.     \scriptfont\sffam\tensf \scriptscriptfont\sffam\tensf
  778. \def\psc{\@getfont\psc\scfam\@xiipt{\@mcsc  \@magi}}%
  779. \def\ly{\fam\lyfam\twlly}\textfont\lyfam\twlly
  780.    \scriptfont\lyfam\egtly \scriptscriptfont\lyfam\sixly
  781. \def\psy{\@getfont\psy\syfam\@xiipt{\PSsymb \@magi}}%
  782. \@setstrut \rm}
  783.  
  784. \def\@xiipt{}
  785.  
  786. \def\xivpt{\textfont\z@\frtnrm
  787.   \scriptfont\z@\tenrm \scriptscriptfont\z@\sevrm
  788. \textfont\@ne\frtnmi \scriptfont\@ne\tenmi \scriptscriptfont\@ne\sevmi
  789. \textfont\tw@\frtnsy \scriptfont\tw@\tensy \scriptscriptfont\tw@\sevsy
  790. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  791. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  792.           \textfont\@ne\frtnmi \textfont\tw@\frtnsy
  793.           \textfont\lyfam\frtnly \@boldfalse}\@boldfalse
  794. \def\boldmath{\@ifundefined{frtnmib}{\global\font
  795.         \frtnmib\@mbi   \@magii\global\font\frtnsyb\@mbsy   \@magii
  796.          \global\font\frtnlyb\@lasyb   \@magii\relax\@addfontinfo\@xivpt
  797.                {\def\boldmath{\everymath
  798.                 {\mit}\everydisplay{\mit}\@prtct\@nomathbold
  799.               \textfont\@ne\frtnmib \textfont\tw@\frtnsyb
  800.               \textfont\lyfam\frtnlyb\@prtct\@boldtrue}}}{}\@xivpt\boldmath}%
  801. \def\prm{\fam\z@\frtnrm}%
  802. \def\pit{\@getfont\pit\itfam\@xivpt{\PSital   \@magii}}%
  803. \def\psl{\@getfont\psl\slfam\@xivpt{\PSslan   \@magii}}%
  804. \def\pbf{\fam\bffam\frtnbf}\textfont\bffam\frtnbf
  805.    \scriptfont\bffam\tenbf \scriptscriptfont\bffam\ninbf
  806. \def\ptt{\@getfont\ptt\ttfam\@xivpt{\PStype   \@magii}\@nohyphens\ptt\@xivpt}%
  807. \def\psf{\@getfont\psf\sffam\@xivpt{\PSsans   \@magii}}%
  808. \def\psc{\@getfont\psc\scfam\@xivpt{\@mcsc   \@magii}}%
  809. \def\ly{\fam\lyfam\frtnly}\textfont\lyfam\frtnly
  810.    \scriptfont\lyfam\tenly \scriptscriptfont\lyfam\sevly
  811. \def\psy{\@getfont\psy\syfam\@xivpt{\PSsymb \@magii}}%
  812. \@setstrut \rm}
  813.  
  814. \def\@xivpt{}
  815.  
  816. \def\xviipt{\textfont\z@\svtnrm
  817.   \scriptfont\z@\twlrm \scriptscriptfont\z@\tenrm
  818. \textfont\@ne\svtnmi \scriptfont\@ne\twlmi \scriptscriptfont\@ne\tenmi
  819. \textfont\tw@\svtnsy \scriptfont\tw@\twlsy \scriptscriptfont\tw@\tensy
  820. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  821. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  822.           \textfont\@ne\svtnmi \textfont\tw@\svtnsy \textfont\lyfam\svtnly
  823.           \@boldfalse}\@boldfalse
  824. \def\boldmath{\@subfont\boldmath\unboldmath}%
  825. \def\prm{\fam\z@\svtnrm}%
  826. \def\pit{\@getfont\pit\itfam\@xviipt{\PSital   \@magiii}}%
  827. \def\psl{\@getfont\psl\slfam\@xviipt{\PSslan   \@magiii}}%
  828. \def\pbf{\fam\bffam\svtnbf}\textfont\bffam\svtnbf
  829.     \scriptfont\bffam\twlbf \scriptscriptfont\bffam\tenbf
  830. \def\ptt{\@getfont\ptt\ttfam\@xviipt{\PStype   \@magiii}\@nohyphens
  831.    \ptt\@xviipt}%
  832. \def\psf{\@getfont\psf\sffam\@xviipt{\PSsans   \@magiii}}%
  833. \def\psc{\@getfont\psc\scfam\@xviipt{\@mcsc   \@magiii}}%
  834. \def\ly{\fam\lyfam\svtnly}\textfont\lyfam\svtnly
  835.    \scriptfont\lyfam\twlly   \scriptscriptfont\lyfam\tenly
  836. \def\psy{\@getfont\psy\syfam\@xviipt{\PSsymb \@magiii}}%
  837. \@setstrut \rm}
  838.  
  839. \def\@xviipt{}
  840.  
  841. \def\xxpt{\textfont\z@\twtyrm
  842.   \scriptfont\z@\frtnrm \scriptscriptfont\z@\twlrm
  843. \textfont\@ne\twtymi \scriptfont\@ne\frtnmi \scriptscriptfont\@ne\twlmi
  844. \textfont\tw@\twtysy \scriptfont\tw@\frtnsy \scriptscriptfont\tw@\twlsy
  845. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  846. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  847.         \textfont\@ne\twtymi \textfont\tw@\twtysy \textfont\lyfam\twtyly
  848.         \@boldfalse}\@boldfalse
  849. \def\boldmath{\@subfont\boldmath\unboldmath}%
  850. \def\prm{\fam\z@\twtyrm}%
  851. \def\pit{\@getfont\pit\itfam\@xxpt{\PSital    \@magiv}}%
  852. \def\psl{\@getfont\psl\slfam\@xxpt{\PSslan    \@magiv}}%
  853. \def\pbf{\@getfont\pbf\bffam\@xxpt{\PSbold    \@magiv}}%
  854. \def\ptt{\@getfont\ptt\ttfam\@xxpt{\PStype    \@magiv}\@nohyphens\ptt\@xxpt}%
  855. \def\psf{\@getfont\psf\sffam\@xxpt{\PSsans    \@magiv}}%
  856. \def\psc{\@getfont\psc\scfam\@xxpt{\@mcsc    \@magiv}}%
  857. \def\ly{\fam\lyfam\twtyly}\textfont\lyfam\twtyly
  858.    \scriptfont\lyfam\frtnly \scriptscriptfont\lyfam\twlly
  859. \def\psy{\@getfont\psy\syfam\@xxpt{\PSsymb    \@magiv}}%
  860. \@setstrut \rm}
  861.  
  862. \def\@xxpt{}
  863.  
  864. \def\xxvpt{\textfont\z@\twfvrm
  865.   \scriptfont\z@\twtyrm \scriptscriptfont\z@\svtnrm
  866. \textfont\@ne\twtymi \scriptfont\@ne\twtymi \scriptscriptfont\@ne\svtnmi
  867. \textfont\tw@\twtysy \scriptfont\tw@\twtysy \scriptscriptfont\tw@\svtnsy
  868. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  869. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  870.         \textfont\@ne\twtymi \textfont\tw@\twtysy \textfont\lyfam\twtyly
  871.         \@boldfalse}\@boldfalse
  872. \def\boldmath{\@subfont\boldmath\unboldmath}%
  873. \def\prm{\fam\z@\twfvrm}%
  874. \def\pit{\@getfont\pit\itfam\@xxvpt{\PSital     \@magv}}%
  875. \def\psl{\@subfont\sl\rm}%
  876. \def\pbf{\@getfont\pbf\bffam\@xxvpt{\PSbold     \@magv}}%
  877. \def\ptt{\@subfont\tt\rm}%
  878. \def\psf{\@subfont\sf\rm}%
  879. \def\psc{\@subfont\sc\rm}%
  880. \def\ly{\fam\lyfam\twtyly}\textfont\lyfam\twtyly
  881.    \scriptfont\lyfam\twtyly \scriptscriptfont\lyfam\svtnly
  882. \def\psy{\@getfont\psy\syfam\@xxvpt{\PSsymb    \@magv}}%
  883. \@setstrut \rm}
  884.  
  885. \def\@xxvpt{}
  886.  
  887. % SPECIAL LaTeX character definitions
  888.  
  889. % Definitions of math operators added by LaTeX
  890. \mathchardef\mho"0A30
  891. \mathchardef\Join"3A31
  892. \mathchardef\Box"0A32
  893. \mathchardef\Diamond"0A33
  894. \mathchardef\leadsto"3A3B
  895. \mathchardef\sqsubset"3A3C
  896. \mathchardef\sqsupset"3A3D
  897. \def\lhd{\mathbin{< \hbox to -.43em{}\hbox{\vrule 
  898.       \@width .065em \@height .55em \@depth .05em}\hbox to .2em{}}}
  899. \def\rhd{\mathbin{\hbox to .3em{}\hbox{\vrule \@width .065em \@height 
  900.        .55em \@depth .05em}\hbox to -.43em{}>}}
  901. \def\unlhd{\mathbin{\leq \hbox to -.43em{}\hbox
  902.         {\vrule \@width .065em \@height .63em \@depth -.08em}\hbox to .2em{}}}
  903. \def\unrhd{\mathbin{ \hbox to .3em{}\hbox
  904.  {\vrule \@width .065em \@height .63em \@depth -.08em}\hbox to -.43em{}\geq}}
  905.  
  906. % Definition of \$ to work in italic font (since it produces a pound sterling
  907. % sign in the cmit font.
  908.  
  909. \def\${\protect\pdollar}
  910. \def\pdollar{{\ifdim \fontdimen\@ne\font >\z@ \sl \fi\char`\$}}
  911.  
  912. % Definition of pound sterling sign.
  913. % Modified 10 Apr 89 to work in math mode.
  914.  
  915. \def\pounds{\protect\ppounds}
  916. %\def\ppounds{\relax\ifmmode\mathchar"4A3\else{\it \char'243}\fi}
  917. \def\ppounds{\relax\ifmmode\hbox{\it \char'243}\else{\it \char'243}\fi}
  918.  
  919. % Definition of \copyright changed so it works in other type styles,
  920. % and so it is robust
  921. \def\copyright{\protect\pcopyright}
  922. \def\pcopyright{{\rm\ooalign{\hfil
  923.      \raise.07ex\hbox{c}\hfil\crcr\mathhexbox20D}}}
  924.